/*
 * Copyright (c) 2015 www.smarthome.com All rights reserved.
 * 本软件源代码版权归----所有,未经许可不得任意复制与传播.
 */
package com.smarthome.domain.bean;

import java.util.Date;

import org.springframework.format.annotation.DateTimeFormat;

import com.smarthome.domain.bean.base.BaseDomain;

/**
 * shDoor
 * 
 * @author KongXiangyu
 * @since 2015-09-07
 */
public class ShDoor extends BaseDomain {
	private static final long serialVersionUID = 1L;
	/** 单元id */
	private Long buildingId;
	private String num;
	private String ownerName;
	private String ownerMobile;
	private String space;
	private Integer status;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date useDate; // 使用时间
	private Long typeId; // 楼栋类型id

	private String comment;
	private Date gmtCreate;
	private Date gmtModify;
	private Integer active;

	// 其他字段
	/** 楼栋id */
	private Long parentId;
	/** 楼栋名称 */
	private String buildingName;

	/** 楼栋单元名称 */
	private String buildingUnitName;

	/** 类型名字 */
	private String typeName;
	private Long baseFee; // 基础费用 （元/平方米） 以分为单位
	private Long otherFee;

	public Long getBaseFee() {
		return baseFee;
	}

	public void setBaseFee(Long baseFee) {
		this.baseFee = baseFee;
	}

	public Long getOtherFee() {
		return otherFee;
	}

	public void setOtherFee(Long otherFee) {
		this.otherFee = otherFee;
	}

	public Long getTypeId() {
		return typeId;
	}

	public void setTypeId(Long typeId) {
		this.typeId = typeId;
	}

	public String getTypeName() {
		return typeName;
	}

	public void setTypeName(String typeName) {
		this.typeName = typeName;
	}

	/** 小区Id */
	private Long residenceId;
	/** 小区名称 */
	private String residenceName;

	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date startGmtCreate;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date endGmtCreate;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date startGmtModify;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date endGmtModify;

	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date startUseDate;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date endUseDate;

	public ShDoor() {
		// 默认无参构造方法
	}

	/**
	 * 获取 buildingId
	 * 
	 * @return
	 */
	public Long getBuildingId() {
		return buildingId;
	}

	/**
	 * 设置 buildingId
	 * 
	 * @param buildingId
	 */
	public void setBuildingId(Long buildingId) {
		this.buildingId = buildingId;
	}

	/**
	 * 获取 num
	 * 
	 * @return
	 */
	public String getNum() {
		return num;
	}

	/**
	 * 设置 num
	 * 
	 * @param num
	 */
	public void setNum(String num) {
		this.num = num;
	}

	/**
	 * 获取 ownerName
	 * 
	 * @return
	 */
	public String getOwnerName() {
		return ownerName;
	}

	/**
	 * 设置 ownerName
	 * 
	 * @param ownerName
	 */
	public void setOwnerName(String ownerName) {
		this.ownerName = ownerName;
	}

	/**
	 * 获取 ownerMobile
	 * 
	 * @return
	 */
	public String getOwnerMobile() {
		return ownerMobile;
	}

	/**
	 * 设置 ownerMobile
	 * 
	 * @param ownerMobile
	 */
	public void setOwnerMobile(String ownerMobile) {
		this.ownerMobile = ownerMobile;
	}

	/**
	 * 获取 space
	 * 
	 * @return
	 */
	public String getSpace() {
		return space;
	}

	/**
	 * 设置 space
	 * 
	 * @param space
	 */
	public void setSpace(String space) {
		this.space = space;
	}

	/**
	 * 获取 status
	 * 
	 * @return
	 */
	public Integer getStatus() {
		return status;
	}

	/**
	 * 设置 status
	 * 
	 * @param status
	 */
	public void setStatus(Integer status) {
		this.status = status;
	}

	/**
	 * 获取 comment
	 * 
	 * @return
	 */
	public String getComment() {
		return comment;
	}

	/**
	 * 设置 comment
	 * 
	 * @param comment
	 */
	public void setComment(String comment) {
		this.comment = comment;
	}

	/**
	 * 获取 gmtCreate
	 * 
	 * @return
	 */
	public Date getGmtCreate() {
		return gmtCreate;
	}

	/**
	 * 设置 gmtCreate
	 * 
	 * @param gmtCreate
	 */
	public void setGmtCreate(Date gmtCreate) {
		this.gmtCreate = gmtCreate;
	}

	/**
	 * 获取 gmtModify
	 * 
	 * @return
	 */
	public Date getGmtModify() {
		return gmtModify;
	}

	/**
	 * 设置 gmtModify
	 * 
	 * @param gmtModify
	 */
	public void setGmtModify(Date gmtModify) {
		this.gmtModify = gmtModify;
	}

	/**
	 * @return the active
	 */
	public Integer getActive() {
		return active;
	}

	/**
	 * @param active
	 *            the active to set
	 */
	public void setActive(Integer active) {
		this.active = active;
	}

	public Long getParentId() {
		return parentId;
	}

	public void setParentId(Long parentId) {
		this.parentId = parentId;
	}

	public String getBuildingName() {
		return buildingName;
	}

	public void setBuildingName(String buildingName) {
		this.buildingName = buildingName;
	}

	public String getBuildingUnitName() {
		return buildingUnitName;
	}

	public void setBuildingUnitName(String buildingUnitName) {
		this.buildingUnitName = buildingUnitName;
	}

	public Long getResidenceId() {
		return residenceId;
	}

	public Date getUseDate() {
		return useDate;
	}

	public void setUseDate(Date useDate) {
		this.useDate = useDate;
	}

	public void setResidenceId(Long residenceId) {
		this.residenceId = residenceId;
	}

	public String getResidenceName() {
		return residenceName;
	}

	public void setResidenceName(String residenceName) {
		this.residenceName = residenceName;
	}

	public Date getStartGmtCreate() {
		return startGmtCreate;
	}

	public void setStartGmtCreate(Date startGmtCreate) {
		this.startGmtCreate = startGmtCreate;
	}

	public Date getEndGmtCreate() {
		return endGmtCreate;
	}

	public void setEndGmtCreate(Date endGmtCreate) {
		this.endGmtCreate = endGmtCreate;
	}

	public Date getStartGmtModify() {
		return startGmtModify;
	}

	public void setStartGmtModify(Date startGmtModify) {
		this.startGmtModify = startGmtModify;
	}

	public Date getEndGmtModify() {
		return endGmtModify;
	}

	public void setEndGmtModify(Date endGmtModify) {
		this.endGmtModify = endGmtModify;
	}

	public Date getStartUseDate() {
		return startUseDate;
	}

	public void setStartUseDate(Date startUseDate) {
		this.startUseDate = startUseDate;
	}

	public Date getEndUseDate() {
		return endUseDate;
	}

	public void setEndUseDate(Date endUseDate) {
		this.endUseDate = endUseDate;
	}

}